package com.esdk.test.orm;
import java.sql.Connection;
import com.esdk.sql.orm.AbstractSelect;
import java.sql.SQLException;
import com.esdk.sql.ISQL;
import com.esdk.sql.Field;
import com.esdk.sql.SmartBetween;
import java.util.Date;

public class SysDictSelect extends AbstractSelect<SysDictSelect,SysDictRow> implements ISQL{
  public static final SysDictMetaData metaData=new SysDictMetaData();
  public static final SysDictMetaData md=metaData;
  public SysDictSelect(){
    super(SysDictMetaData.TABLENAME,false);
  }

  public SysDictSelect(Connection conn,boolean isTop){
    super(SysDictMetaData.TABLENAME,isTop,conn);
  }

  public SysDictSelect(Connection conn){
    super(SysDictMetaData.TABLENAME,conn);
  }

  public SysDictSelect(boolean isJoin){
    super(SysDictMetaData.TABLENAME,isJoin);
  }

  public SysDictSelect(String joinType){
    super(SysDictMetaData.TABLENAME,joinType);
  }

  public SysDictMetaData getMetaData(){
    return metaData;
  }

  public SysDictRow[] toSysDictRowArray()throws Exception{
    return (SysDictRow[])list().toArray(new SysDictRow[0]);
  }

  public SysDictRow getFirstSysDictRow(){
    return (SysDictRow)getFirstRow();
  }

  public SysDictRow getFirstSysDictRow(boolean isCreateInstance){
    return (SysDictRow)getFirstRow(isCreateInstance);
  }

  public SysDictResultSet toSysDictResultSet()throws SQLException{
    return (SysDictResultSet)toParentResultSet();
  }

  public void setPrimaryKey(Object value){
    fieldMap.put(SysDictMetaData.PrimaryKey,value);
  }

  public Long getDictId(){
    return (Long)fieldMap.get(SysDictMetaData.DictId);
  }

  public SysDictSelect setDictId(Long value){
    fieldMap.put(SysDictMetaData.DictId,value);
    return this;
  }

  public SysDictSelect setDictId(Long[] values){
    super.in(SysDictMetaData.DictId,values);
    return this;
  }

  public SysDictSelect setDictId(AbstractSelect select){
    super.in(SysDictMetaData.DictId,select);
    return this;
  }

  public Field createDictIdField(){
    return this.createField(metaData.DictId);
  }

  public String getCategory(){
    return (String)fieldMap.get(SysDictMetaData.Category);
  }

  public SysDictSelect setCategory(String value){
    fieldMap.put(SysDictMetaData.Category,value);
    return this;
  }

  public SysDictSelect setCategory(String[] values){
    super.in(SysDictMetaData.Category,values);
    return this;
  }

  public SysDictSelect setCategory(AbstractSelect select){
    super.in(SysDictMetaData.Category,select);
    return this;
  }

  public SysDictSelect addLikeCategory(String value){
    addLikeCondition(metaData.Category,value);
    return this;
  }

  public Field createCategoryField(){
    return this.createField(metaData.Category);
  }

  public Long getParentId(){
    return (Long)fieldMap.get(SysDictMetaData.ParentId);
  }

  public SysDictSelect setParentId(Long value){
    fieldMap.put(SysDictMetaData.ParentId,value);
    return this;
  }

  public SysDictSelect setParentId(Long[] values){
    super.in(SysDictMetaData.ParentId,values);
    return this;
  }

  public SysDictSelect setParentId(AbstractSelect select){
    super.in(SysDictMetaData.ParentId,select);
    return this;
  }

  public Field createParentIdField(){
    return this.createField(metaData.ParentId);
  }

  public String getText(){
    return (String)fieldMap.get(SysDictMetaData.Text);
  }

  public SysDictSelect setText(String value){
    fieldMap.put(SysDictMetaData.Text,value);
    return this;
  }

  public SysDictSelect setText(String[] values){
    super.in(SysDictMetaData.Text,values);
    return this;
  }

  public SysDictSelect setText(AbstractSelect select){
    super.in(SysDictMetaData.Text,select);
    return this;
  }

  public SysDictSelect addLikeText(String value){
    addLikeCondition(metaData.Text,value);
    return this;
  }

  public Field createTextField(){
    return this.createField(metaData.Text);
  }

  public String getValue(){
    return (String)fieldMap.get(SysDictMetaData.Value);
  }

  public SysDictSelect setValue(String value){
    fieldMap.put(SysDictMetaData.Value,value);
    return this;
  }

  public SysDictSelect setValue(String[] values){
    super.in(SysDictMetaData.Value,values);
    return this;
  }

  public SysDictSelect setValue(AbstractSelect select){
    super.in(SysDictMetaData.Value,select);
    return this;
  }

  public SysDictSelect addLikeValue(String value){
    addLikeCondition(metaData.Value,value);
    return this;
  }

  public Field createValueField(){
    return this.createField(metaData.Value);
  }

  public Integer getSequence(){
    return (Integer)fieldMap.get(SysDictMetaData.Sequence);
  }

  public SysDictSelect setSequence(Integer value){
    fieldMap.put(SysDictMetaData.Sequence,value);
    return this;
  }

  public SysDictSelect setSequence(Integer[] values){
    super.in(SysDictMetaData.Sequence,values);
    return this;
  }

  public SysDictSelect setSequence(AbstractSelect select){
    super.in(SysDictMetaData.Sequence,select);
    return this;
  }

  public SysDictSelect setSequence(Integer start,Integer end){
    fieldMap.put(SysDictMetaData.Sequence,new SmartBetween(this.createField(SysDictMetaData.Sequence),start,end));
    return this;
  }

  public Field createSequenceField(){
    return this.createField(metaData.Sequence);
  }

  public Long getTenantId(){
    return (Long)fieldMap.get(SysDictMetaData.TenantId);
  }

  public SysDictSelect setTenantId(Long value){
    fieldMap.put(SysDictMetaData.TenantId,value);
    return this;
  }

  public SysDictSelect setTenantId(Long[] values){
    super.in(SysDictMetaData.TenantId,values);
    return this;
  }

  public SysDictSelect setTenantId(AbstractSelect select){
    super.in(SysDictMetaData.TenantId,select);
    return this;
  }

  public Field createTenantIdField(){
    return this.createField(metaData.TenantId);
  }

  public Boolean getIsCascade(){
    return (Boolean)fieldMap.get(SysDictMetaData.IsCascade);
  }

  public SysDictSelect setIsCascade(Boolean value){
    fieldMap.put(SysDictMetaData.IsCascade,value);
    return this;
  }

  public Field createIsCascadeField(){
    return this.createField(metaData.IsCascade);
  }

  public String getRemark(){
    return (String)fieldMap.get(SysDictMetaData.Remark);
  }

  public SysDictSelect setRemark(String value){
    fieldMap.put(SysDictMetaData.Remark,value);
    return this;
  }

  public SysDictSelect setRemark(String[] values){
    super.in(SysDictMetaData.Remark,values);
    return this;
  }

  public SysDictSelect setRemark(AbstractSelect select){
    super.in(SysDictMetaData.Remark,select);
    return this;
  }

  public SysDictSelect addLikeRemark(String value){
    addLikeCondition(metaData.Remark,value);
    return this;
  }

  public Field createRemarkField(){
    return this.createField(metaData.Remark);
  }

  public Boolean getValid(){
    return (Boolean)fieldMap.get(SysDictMetaData.Valid);
  }

  public SysDictSelect setValid(Boolean value){
    fieldMap.put(SysDictMetaData.Valid,value);
    return this;
  }

  public Field createValidField(){
    return this.createField(metaData.Valid);
  }

  public Date getCreateTime(){
    return (Date)fieldMap.get(SysDictMetaData.CreateTime);
  }

  public SysDictSelect setCreateTime(Date value){
    fieldMap.put(SysDictMetaData.CreateTime,value);
    return this;
  }

  public SysDictSelect setCreateTime(Date start,Date end){
    fieldMap.put(SysDictMetaData.CreateTime,new SmartBetween(this.createField(SysDictMetaData.CreateTime),start,end));
    return this;
  }

  public Field createCreateTimeField(){
    return this.createField(metaData.CreateTime);
  }

  public Long getCreateUserId(){
    return (Long)fieldMap.get(SysDictMetaData.CreateUserId);
  }

  public SysDictSelect setCreateUserId(Long value){
    fieldMap.put(SysDictMetaData.CreateUserId,value);
    return this;
  }

  public SysDictSelect setCreateUserId(Long[] values){
    super.in(SysDictMetaData.CreateUserId,values);
    return this;
  }

  public SysDictSelect setCreateUserId(AbstractSelect select){
    super.in(SysDictMetaData.CreateUserId,select);
    return this;
  }

  public Field createCreateUserIdField(){
    return this.createField(metaData.CreateUserId);
  }

  public String getCreateUserName(){
    return (String)fieldMap.get(SysDictMetaData.CreateUserName);
  }

  public SysDictSelect setCreateUserName(String value){
    fieldMap.put(SysDictMetaData.CreateUserName,value);
    return this;
  }

  public SysDictSelect setCreateUserName(String[] values){
    super.in(SysDictMetaData.CreateUserName,values);
    return this;
  }

  public SysDictSelect setCreateUserName(AbstractSelect select){
    super.in(SysDictMetaData.CreateUserName,select);
    return this;
  }

  public SysDictSelect addLikeCreateUserName(String value){
    addLikeCondition(metaData.CreateUserName,value);
    return this;
  }

  public Field createCreateUserNameField(){
    return this.createField(metaData.CreateUserName);
  }

  public Date getUpdateTime(){
    return (Date)fieldMap.get(SysDictMetaData.UpdateTime);
  }

  public SysDictSelect setUpdateTime(Date value){
    fieldMap.put(SysDictMetaData.UpdateTime,value);
    return this;
  }

  public SysDictSelect setUpdateTime(Date start,Date end){
    fieldMap.put(SysDictMetaData.UpdateTime,new SmartBetween(this.createField(SysDictMetaData.UpdateTime),start,end));
    return this;
  }

  public Field createUpdateTimeField(){
    return this.createField(metaData.UpdateTime);
  }

  public Long getUpdateUserId(){
    return (Long)fieldMap.get(SysDictMetaData.UpdateUserId);
  }

  public SysDictSelect setUpdateUserId(Long value){
    fieldMap.put(SysDictMetaData.UpdateUserId,value);
    return this;
  }

  public SysDictSelect setUpdateUserId(Long[] values){
    super.in(SysDictMetaData.UpdateUserId,values);
    return this;
  }

  public SysDictSelect setUpdateUserId(AbstractSelect select){
    super.in(SysDictMetaData.UpdateUserId,select);
    return this;
  }

  public Field createUpdateUserIdField(){
    return this.createField(metaData.UpdateUserId);
  }

  public String getUpdateUserName(){
    return (String)fieldMap.get(SysDictMetaData.UpdateUserName);
  }

  public SysDictSelect setUpdateUserName(String value){
    fieldMap.put(SysDictMetaData.UpdateUserName,value);
    return this;
  }

  public SysDictSelect setUpdateUserName(String[] values){
    super.in(SysDictMetaData.UpdateUserName,values);
    return this;
  }

  public SysDictSelect setUpdateUserName(AbstractSelect select){
    super.in(SysDictMetaData.UpdateUserName,select);
    return this;
  }

  public SysDictSelect addLikeUpdateUserName(String value){
    addLikeCondition(metaData.UpdateUserName,value);
    return this;
  }

  public Field createUpdateUserNameField(){
    return this.createField(metaData.UpdateUserName);
  }

  public Integer getVersion(){
    return (Integer)fieldMap.get(SysDictMetaData.Version);
  }

  public SysDictSelect setVersion(Integer value){
    fieldMap.put(SysDictMetaData.Version,value);
    return this;
  }

  public SysDictSelect setVersion(Integer[] values){
    super.in(SysDictMetaData.Version,values);
    return this;
  }

  public SysDictSelect setVersion(AbstractSelect select){
    super.in(SysDictMetaData.Version,select);
    return this;
  }

  public SysDictSelect setVersion(Integer start,Integer end){
    fieldMap.put(SysDictMetaData.Version,new SmartBetween(this.createField(SysDictMetaData.Version),start,end));
    return this;
  }

  public Field createVersionField(){
    return this.createField(metaData.Version);
  }

}
